﻿// 数据实现类：内存版 CRUD
public class UserRepository : IUserRepository
{
    // 模拟数据库（内存集合）
    private readonly List<User> _users = new List<User>
    {
        new User { Id = 1, Name = "张三" },
        new User { Id = 2, Name = "李四" },
    };

    // 根据ID查询
    public User GetById(int id) => _users.FirstOrDefault(u => u.Id == id);

    // 查询所有
    public List<User> GetAll() => _users.ToList();

    // 添加用户（ID自增）
    public void Add(User user)
    {
        user.Id = _users.Max(u => u.Id) + 1;
        _users.Add(user);
    }

    // 更新用户（存在则更新，返回是否成功）
    public bool Update(User user)
    {
        var existing = GetById(user.Id);
        if (existing == null)
            return false;

        existing.Name = user.Name;
        return true;
    }

    // 删除用户（存在则删除，返回是否成功）
    public bool Delete(int id)
    {
        var user = GetById(id);
        if (user == null)
            return false;

        _users.Remove(user);
        return true;
    }
}
